<template>
    <div class="main">
      <div class="title">
        <a class="active" href="/login">登录</a>
        <span>·</span>
        <a href="/register">注册</a>
      </div>
      <div class="sign-up-container">
        <el-form ref="userForm" :model="user">
          <el-form-item class="input-prepend restyle" prop="mobile" :rules="[{ required: true, message: '请输入手机号码', trigger: 'blur' },{validator: checkPhone, trigger: 'blur'}]">
            <div >
              <el-input type="text" placeholder="手机号" v-model="user.mobile"/>
              <i class="iconfont icon-phone" />
            </div>
          </el-form-item>
          <el-form-item class="input-prepend" prop="password" :rules="[{ required: true, message: '请输入密码', trigger: 'blur' }]">
            <div>
              <el-input type="password" placeholder="密码" v-model="user.password"/>
              <i class="iconfont icon-password"/>
            </div>
          </el-form-item>
          <div class="btn">
            <input type="button" class="sign-in-button" value="登录" @click="submitLogin()">
          </div>
          <div class="btn">
            <input type="button" class="sign-in-button" value="找回密码" @click="findpassword()">
          </div>
        </el-form>
        <!-- 更多登录方式 -->
        <div class="more-sign">
          <h6>社交帐号登录</h6>
          <ul>
            <li><a id="weixin" class="weixin" target="_blank" href="http://localhost:8160/api/ucenter/wx/login"><i class="iconfont icon-weixin"/></a></li>
            <li><a id="qq" class="qq" target="_blank" href="#"><i class="iconfont icon-qq"/></a></li>
          </ul>
        </div>
      </div>
    </div>
</template>
<script>
import '~/assets/css/sign.css'
import '~/assets/css/iconfont.css'
// 这个是使用拦截器的 因为我们要有token在上面那么这个先拦截把token放在上面
import cookie from 'js-cookie'

import login from '@/api/login'
export default {
      layout: 'sign',
      data () {
        return {
          user:{
            mobile:'',
            password:''
          },
          loginInfo:{}
        }
      },
      methods: {
        // 找回密码
        findpassword(){
          window.location.href = "/find"
        },
        // 登录方法
        submitLogin(){
            // 第一步，调用接口进行登录，返回token的字符串
            login.loginMember(this.user).then(resp => {
              console.log(resp.data)
              if(resp.data.success){
                // 获取token的字符串
                // 把token放到header里面
                // 因为我们后端获取用户id 就是从header里面的到token的
                // 第二步 把token放到header里面去
                // 前两个 key:value 的格式，第三个参数就是作用的范围
                cookie.set("guli_token",resp.data.data.token,{domain:'localhost'})
                //  第三步 判断cookie中是否有值 有值的话就放进header里面

                // 第四步 调用接口，根据token来获取用户的信息 为了首页面提示
                login.getLogininUserInfo().then(resp => {
                  // 转为json字符串
                  this.loginInfo = resp.data.data.memberInfo
                  // 获取返回的用户信息  并且放到cookie里面
                  cookie.set("guli_ucenter",JSON.stringify(this.loginInfo),{domain:'localhost'})

                  // 跳转页面
                  window.location.href = "/";
                })
              } else {
                this.$message({
                    type: 'error',
                    message: '账号或密码错误'
                  })
                // this.password = ''
              }

            })
        },
        // 这个就是我们自己自定义的检查手机的格式
        checkPhone (rule, value, callback) {
          //debugger
          if (!(/^1[34578]\d{9}$/.test(value))) {
            return callback(new Error('手机号码格式不正确'))
          }
          return callback()
        }
      }
    }
</script>
<style>
     .el-form-item__error{
      z-index: 9999999;
    }
</style>